package cn.tedu.api;

import java.util.Arrays;

//测试 String类
public class Test1_String {
	public static void main(String[] args) {
		//1,创建String对象
		char[] value = {'h','e','l','l','o'};
		//触发:String(char[] value)
		String s = new String(value);
		//2,调用方法
		char a = s.charAt(0);//获取0下标对应的char
		System.out.println(a);
		System.out.println(s.concat("xyz"));//拼接字符串
		System.out.println(s.contains("123"));//判断是否包含"123"
		System.out.println(s.endsWith("lo"));//判断是否以"lo"结尾
		System.out.println(s.equals("hello"));//判断是否与hello"相等
		byte[] bs = s.getBytes();
		//查询ascii码表把每个字符变成整数存入byte[]
		System.out.println(bs);//[B@15db9742
		//[104, 101, 108, 108, 111]
		System.out.println(Arrays.toString(bs));

		System.out.println(s.hashCode());//获取s的哈希码值
		System.out.println(s.isEmpty());//判断s是否为空
		System.out.println(s.indexOf("l"));//获取l在s字符串里第一次出现的索引
		System.out.println(s.lastIndexOf("l"));//获取l在s字符串里最后一次出现的索引
		System.out.println(s.length());//获取s的长度
		System.out.println(s.replace('l','6'));//把s里的所有l,换成6
		//TODO
		String[] ss = s.split("e");//把字符串按照规则切割
		System.out.println(Arrays.toString(ss));//[h, llo]
		System.out.println(s.startsWith("hel"));//判断是否以"hel"开始
		System.out.println(s.substring(2));//截取子串,从2到结束
		System.out.println(s.substring(2,4));//截取子串,从2开始到4结束,含头不含尾[2,4)
		System.out.println(s.toLowerCase());//全转小写

		char[] cs = s.toCharArray();//把字符串里的数据存入char[]
		//注意:只有char[]是可以直接输出的，不用Arrays.toString,而其它类型的数组是不行的
		System.out.println(cs);

		System.out.println(s.toUpperCase());//全转大写
		String s2 = "  1 23  " ; //简写形式
		System.out.println(s2.trim());//去除多余空格
		//把其他类型 转成字符串类型
		String s3 = String.valueOf(100);
		System.out.println(s3+1);//1001

		//TODO 获取字符串里的每个字符
		String s4 = "abc123a";//定义字符串
		//遍历字符串
		for(int i = 0 ; i < s4.length() ;i++) {
			//根据下标,获取每个字符
			char c = s4.charAt(i);
			System.out.println(c);
		}
	}
}






